﻿// 网络流 24 题, 数字梯形问题.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>

using  namespace std;


/*


http://oj.daimayuan.top/course/23/problem/1086


给定一个由 n 行数字组成的数字梯形如下图所示。

    2 3
   3 4 5
  9 10 9 1
 1 1 10 1 1
1 1 10 12 1 1
梯形的第一行有 m 个数字。从梯形的顶部的 m 个数字开始，在每个数字处可以沿左下或右下方向移动，形成一条从梯形的顶至底的路径。

分别遵守以下规则：

从梯形的顶至底的 m 条路径互不相交；

从梯形的顶至底的 m 条路径仅在数字结点处相交；

从梯形的顶至底的 m 条路径允许在数字结点相交或边相交。

输入格式
第 1 行中有 2 个正整数 m,n(1≤m,n≤20)，分别表示数字梯形的第一行有 m 个数字，共有 n 行。接下来的 n 行是数字梯形中各行的数字。

第 1 行有 m 个数字，第 2 行有 m+1 个数字，以此类推。

输出格式
将按照规则 1，规则 2，和规则 3 计算出的最大数字总和并输出，每行一个最大总和。

样例输入1
2 5
2 3
3 4 5
9 10 9 1
1 1 10 1 1
1 1 10 12 1 1
样例输出1
66
75
77
提示
1≤m,n≤20
*/

int main()
{
    std::cout << "Hello World!\n";
}
 